ぼろぼろGIS

産総研
last updated 2023.9.22
凡例付け替え作業のメモ
シームレス地質図を作成するときに凡例の付け替え作業はとても大事
内輪メモ
20万分の1地質図幅の凡例のエクセル表を作成。
(手順)
  1. 該当する20万分の1の地質図の凡例を見る。たとえば記号R2aの場合左から
    新生代 第四紀 前期更新世後半ー中期更新世(Q2) 琉球層群 徳之島層及び沖永良部層 上部 R2a 礫及び砂
    
    とある。
  2. エクセル表を新規作成する→エクセル表のサンプル
  3. ここでは
    コード(凡例の上からの通し番号17) 記号(R2a) 時代区分(Q2) 地層名1(琉球層群) 地層名2(徳之島層及び沖永良部層) 地層名3(上部) 岩石・岩相名(礫及び砂) 詳細版番号(30) 基本版番号(3) コメント(メモ)
    となっている。詳細版番号と基本版番号を空欄にして図幅の著者にわたし、該当する番号を記入してもらう。
担当者にシームレス地質図の凡例番号との対比を行ってもらう。
(手順)
  1. 著者には作成したエクセル表と、シームレス地質図の凡例表(基本版と詳細版)のエクセル表を渡して、オリジナルの20万分の1地質図のそれぞれの凡例(R2aやVなど)が、シームレス地質図の凡例番号の何に相当するのか記入してもらう。
  2. この時に、凡例は20万分の1の凡例1つに対し、必ずシームレスの凡例が1:1の対応をするように著者に判断してもらう。
    ここで例えば20万分の1のR2aとR1bがどちらもシームレス基本版で3に相当するのは良い。
地質図幅のディジタルデータを用意する(shp)
(手順)
  1. 自作の場合は次のステップのチェック作業を先にやる。
  2. 外注の場合も念のためにトポロジチェックを行うとよい。
微小ポリゴンや隙間がないかチェックを行う
(手順)
  1. ArcCatalogを起動する
  2. カタログツリーにて右クリック:新規作成→ファイルジオデータベース(gdb)ここではtoku3.gdb
  3. 作成したジオデータベースを右クリック:新規作成→フィーチャーデータセット。ここではtoku3と入力
  4. 座標系を選ぶ:日本周辺座標系→地理座標系(緯経度)→JGD2000
  5. Z軸の座標系を選ぶ:日本周辺座標系→鉛直座標系→WGS1984ジオイド
  6. XY許容値、Z許容値、M許容値はとりあえずデフォルトのまま
  7. 重複したフィーチャーを含むシェープファイル(toku3_area.shp)を右クリックし、エクスポート→ジオデータベース(シングル)
  8. 作成したジオデータベースのフィーチャーデーターセット内にフィーチャークラスを作成する。
    入力フィーチャーtoku3_area.shp
    出力フィーチャーtoku3.gdb>toku3
    出力フィーチャークラスtoku3_area
    
    OKを押す
  9. ジオデータベースのフィーチャーデータセット(toku3)を右クリックし、新規作成→トポロジ
  10. 画面に従ってルールを作る。トポロジ名(toku3_Topology)、許容範囲はデフォルト
  11. トポロジに含めるフィーチャークラスを選択(チェックマークを入れる)
  12. ランク数はとりあえず5がデフォルトらしい
  13. ルールの追加で「重複しない」を選びエラーの表示にチェックを入れる。OK
  14. ルールの追加で「ギャップがない」を選びエラーの表示にチェックを入れる。 OK
  15. トポロジ構築後、整合チェックを行いますか?と聞かれるので「はい」
  16. ArcMapを起動する。新しいマップを作る。
  17. ArcCatalogからジオデータベースのフィーチャーデータセット内のトポロジ(toku3_Topology, toku3_area)をArcMapへ追加。
  18. このとき、エリアエラーは重なり、ラインエラーはギャップを示すことが多い。この2つのエラーの表示色を変えると見やすい
  19. エディタツールバーにて「編集の開始」
  20. エディタツールバーの「その他編集ツール」で「トポロジ」を選択
  21. トポロジツールバーの一番右の「エラーインスペクター」をクリックし、「表示範囲」のチェックを外して「検索開始」を実行
  22. 「エラーインスペクター」のテーブルにエラーれコートが表示されるのでそれを右クリックすると表示が変わる
  23. あとは1つずつ修正するしかない
  24. レイヤースナップを設定する。エディター→スナッピング:エディター→オプション→一般でスナップ許容値を10ピクセルくらいにする。
隙間の調整
(手順)
  1. 表示→ツールバー→ツール
  2. エラーのあるところを虫めがねツールで拡大し表示する。
  3. トポロジツールバーの右から4番目(現在の表示範囲でトポロジの整合チェック)をクリック
  4. エラーインスペクタ(トポロジツールバーの1番右)をクリックして表を出し、検索開始をクリック
  5. エラーインスペクタから順番にエラーを選ぶ(ダブルクリックで該当する色が合わる)
  6. 「ギャップなし」というルール違反を右クリックすると「フィーチャー作成」があるので選択
  7. 属性テーブルを開くとのポリゴンができているのでそれを属性テーブルから選択
  8. シフトキーを押しながら隣接するポリゴンを選択
  9. 「エディタ」→「マージ」でポリゴンを隣接するポリゴンにくっつける
  10. 編集の保存で確定しておく
  11. 海岸線などがひっかかったら「例外としてマーク」を選択する
  12. あとはひたすら忍耐、忍耐
重複の削除
(手順)
  1. 表示→ツールバー→ツール
  2. エラーのあるところを虫めがねツールで拡大し表示する。
  3. トポロジツールバーの右から4番目(現在の表示範囲でトポロジの整合チェック)をクリック
  4. エラーインスペクタ(トポロジツールバーの1番右)をクリックして表を出し、検索開始をクリック
  5. エラーインスペクタから順番にエラーを選ぶ(ダブルクリックで該当する色が合わる)
  6. 「重複しない」というルール違反をダブルクリックすると該当箇所の色が変わる
  7. エラーインスペクタから該当するものを右クリックで除去(他にマージとフィーチャーの作成の選択肢があるがとりあえず)
  8. 編集の保存で確定しておく
  9. あとはひたすら忍耐、忍耐
ジオデータベースに他のファイルも統合
line.shpとpoint.shpをジオデータベースに入れる
(手順)
  1. ArcCatalogを起動する
  2. Tokunoshima_line.shpを右クリックし、エクスポート→ジオデータベース(シングル)
    入力フィーチャーTokunoshima_line.shp
    出力フィーチャーtoku3.gdb>toku3
    出力フィーチャークラスtoku3_line
    
    OKを押す
  3. 同様にTokunoshima_point.shpを右クリックし、エクスポート→ジオデータベース(シングル)
    入力フィーチャーTokunoshima_point.shp
    出力フィーチャーtoku3.gdb>toku3
    出力フィーチャークラスtoku3_point
    
    OKを押す
なぜか色が抜けるので、元に戻す。
  1. ArcMapを起動する
  2. ArcCatalogから以前の色分けしてあるarea.shpを見つけ、右クリックでレイヤとして保存。area.lyrを作成。
  3. area.lyrをArcMapへドラッグ
  4. 色が抜けたtoku3_areaを右クリックでプロパティーを出す。
    シンボルタブ
    フィールド>記号
    値の追加>すべての値を選ぶ
    インポート>area.lyr
    
    OKを押す
  5. トポロジーファイルははずす
  6. 原図(200k_NG5213_400.png)をCatalogから持ってくる
データーサーバーにストックしておく
  1. ArcMapで既存のデータからshpを作成する
    • ArcMapを起動する。最終段階のmxdを開いてジオデータベースを開く。
    • ArcCatalogを起動する。
    • tokunoshima.gdb/toku3/toku3_areaを右クリックし、エクスポート→シェープファイル(シングル)
             入力フィーチャーtoku3_area
             出力場所tokunoshima(morijiri2)
             出力フィーチャークラスtokunoshima_area
             
      OKを押す
    • 以下、toku3_line、toku3_pointについても同様に作成する
  2. shpはエクスポートをするたびに色情報が落ちてしまうのでその都度色をつける
    • ArcMapへArcCatalogからshpファイルを持っていく
    • shpファイルを右クリックでプロパティーを出す
    • シンボルを開く
              カテゴリ>スタイルのシンボルに一致
              フィールド>記号
              値の追加>すべての値を選んでOK
              インポート>toku3_area>記号を選ぶ
              
      OKを押す
    • 以下、toku3_line、toku3_pointについても同様に作成する
    • shpファイルによるmxdを作っておく→tokunoshima0702S.mxd
  3. 作成したshpファイルからレイヤを作成する
    • レイヤを作成したいファイルを右クリック。
    • レイヤファイルとしてそれぞれ保存
凡例の付け替え作業を行う
(手順)
  1. 基本版用と詳細版用にGISデータをあらかじめフォルダーごとコピーする
  2. エクセルの基本版の凡例表(poly_basic.xls)と詳細版の凡例表(poly_detail.xls)をシームレスのサーバー(\\geoinf3.a07.aist.go.jp\seamless)の現凡例からダウンロードして、それぞれのエクセルファイルを1で準備した基本版と詳細版のフォルダに入れる。
  3. ジオデータベース(toku3_area)を開く。エディタで編集を開始する。
  4. 左のtoku3_areaを右クリックして、属性テーブルを開く。
  5. 対比用のカラムを追加する(基本版はlegend_b、詳細版はlegend_d). Shot Integer(プロパティの精度は5)
    以下、基本版を例として
    1. 属性ファイルの下の「オプション」→「フィールドの追加」
    2. legend_bにNullが入る。
  6. 著者から送られてきた対比表をもとに、順に対比番号を入力する。
    1. ArcMapのエディタバーで編集の開始
    2. 宝田マニュアルはこちら
    3. 属性テーブルで選択表示モードにする。
    4. 属性テーブルのオプションから属性検索を選び、置換する属性の記号だけを表示させる
      1. 「記号」をダブルクリック(外注したものはCCODE1)
      2. 「=」をダブルクリック
      3. 「個別値を取得」をクリック
      4. 例えば「r」をダブルクリック
      5. 属性テーブルにrだけ表示される
      6. legend_bの列を右クリックしてフィールド演算を選ぶ
      7. 種類で数値を選ぶ
      8. 関数はFormat()を選択し、置き換える文字列として( 1 )としてOK。
      9. すべての凡例について上と同様の作業を行い、legend_bに凡例番号を振る。ここでこまめに「エディタ」の「編集の保存」を行う。
      10. 海、湖、河川(記号Wまたはw)には基本版は200を、詳細版は2000を割り振ること。最後に0のまま残っている部分がないかどうかよく確認する。
    5. 属性テーブルを結合する
      1. toku3_areaを右クリックして、「テーブル結合とリレート」→「テーブル結合」を選ぶ。
      2. レイヤへのテーブル結合の対象>テーブルの属性を結合
      3. テーブル結合に利用する値を持つフィール>legend_b
      4. 結合先のレイヤまたはテーブル>シームレス基本版の凡例表(poly_basic.xls)の中のテーブル(poly_basic_data$)を選択する。
      5. 結合先のマッチングに利用するフィールドは基本版はKihon_Noを、詳細版はNew_Noを選ぶ。
      6. すべてのレコードを保持するにチェックを入れてOK
    6. 色をつける
      1. toku3_areaを右クリックでプロパティーを出す
      2. ラベルタブを選んで、表示するラベルをlegend_bに変更する。
      3. シンボルタブを開く
      4. カテゴリ>スタイルのシンボルに一致
      5. フィールド>legend_b
      6. 値の追加>すべての値を選んでOK
      7. ここで適当な色がつくので、それを凡例のRGB値に置き換える
      8. toku3_areaを右クリックして属性テーブルを出す。
        1. 属性テーブルの属性検索をうまく使ってlegend_bに対応したRGB値をメモしておく。
        2. 左の部分でダブルクリックすれば、シンボル選択が面がでてくるので、塗りつぶし色の右側の矢印をクリックしてその他の色を選び、RGB値を入力する。
      9. すべての色を付け換えて完成。

      10. 右クリックでレイヤファイルとして保存。tokunoshima_area.lyr
        このとき必ずエクスポートする前にレイヤファイルとして保存する。そうしないとすべて作業が無駄になるので要注意。
      11. 属性テーブルの結合を保持するために、フィーチャをエクスポートする。 「データ」→「データのエクスポート」でExport_areaを作成する。
        1. テーブル オブ コンテンツでtoku3_areaを右クリックして、[データ] をポイントし、[データのエクスポート] をクリック。
        2. [エクスポート] ドロップダウン矢印をクリックし、[すべてのフィーチャ]、[選択フィーチャ]、または [表示範囲のすべてのフィーチャ] のいずれかをクリック。
        3. 使用する出力座標系のオプションをクリック
        4. [参照] ボタン をクリックし、エクスポート データを保存する場所に移動
        5. 出力データ ソース名を入力
        6. [ファイルの種類] ドロップダウン矢印をクリックし、出力タイプを選択し、[保存] をクリック
        7. [OK] をクリック
        8. ジオデータベースのフィーチャExport_areaができる

  7. Lineの凡例の付け替え

    1. エクセルの凡例表(Line.xls)をシームレスのサーバー(\\geoinf3.a07.aist.go.jp\seamless)の現凡例からダウンロードして、それぞれのエクセルファイルを1で準備した基本版と詳細版のフォルダに入れる。
    2. 左のtoku3_lineを右クリックして、属性テーブルを開く。

    3. 対比用のカラムを追加する(legend_l). Shot Integer(プロパティの精度は5)
      1. 属性ファイルの下の「オプション」→「フィールドの追加」
      2. legend_lにNullが入る
      3. ArcMapのエディタバーで編集の開始(toku3_line)
      4. 属性テーブルで選択表示モードにする。
      5. 属性テーブルのオプションから属性検索を選び、置換する属性の記号だけを表示させる
        1. 「Line」をダブルクリック(外注したものはICODE1)
        2. 「=」をダブルクリック
        3. 「個別値を取得」をクリック
        4. 例えば「1」をダブルクリック
        5. 属性テーブルに1だけ表示される
        6. legend_lの列を右クリックしてフィールド演算を選ぶ
        7. 種類で数値を選ぶ
        8. 関数はFormat()を選択し、置き換える文字列として( 1 )としてOK。
        9. すべての凡例について上と同様の作業を行い、legend_lに凡例番号を振る。ここでこまめに「エディタ」の「編集の保存」を行う。
    4. 属性テーブルを結合する
      1. toku3_lineを右クリックして、「テーブル結合とリレート」→「テーブル結合」を選ぶ。
      2. レイヤへのテーブル結合の対象>テーブルの属性を結合
      3. テーブル結合に利用する値を持つフィール>legend_l
      4. 結合先のレイヤまたはテーブル>シームレス基本版の凡例表(line.xls)の中のテーブル(line_data$)を選択する。
      5. 結合先のマッチングに利用するフィールドはNoを選ぶ。
      6. すべてのレコードを保持するにチェックを入れてOK

    5. 色をつけかえる
      1. 属性テーブルを見てここではすべて2なのでRGBは0,0,0。Export_lineのプロパティーで修正。さらにラインの太さを0.42ミリメートルにする。
      2. レイヤファイルとして保存。tokunoshima_line.lyr
    6. toku3_lineを右クリックして「データ」→「エクスポート」でExport_lineを作成する(テーブル結合を確定させる?)

  8. ArcMapのエディターで編集を保存し、編集を終了する。

  9. 再表示
    1. Exportすると色が抜けてしまうので、再度つけてやる。tokunoshima.gdbからtokunoshima_areaとtokunoshima_lineを表示するとき
    2. ArcCatalogを開いて先ほど作ったtokunoshima_area.lyrとtokunoshima_line.lyrをArcMapで開く。
    3. tokunoshima_areaを右クリックでプロパティーを出し
      シンボルタブ
      フィールド(legend_b)
      カテゴリ(スタイルのシンボルに一致)
      値の追加(すべて)
      インポートでtokunoshima_area.lyr
      
      とすると色が復活する。
    4. 同様に、tokunoshima_lineを右クリックしてプロパティーを選び、
      シンボルタブ
      スタイルのシンボルに一致
      フィールド(legend_l)
      カテゴリ(スタイルのシンボルに一致)
      値の追加(すべて)
      インポートでtokunoshima_line.lyr
      
      を選んで、色を得る。
各図面の編集責任者に界線のチェックと修正を依頼する
(手順)
  1. 凡例が付け替えられた図面をプリントアウトまたはファイルのコピーを渡し、著者に確認してもらう。
  2. 修正個所をファイルの場合はプリントアウト、紙の場合はスキャナーで読み取り、サーバー上の地域別、校正回数ごとのフォルダに保存し、どこを修正したのか関係者にわかるようにする。
修正が完了したらマスターファイルとしてサーバー上に保存
(手順)
  1. E00形式にする(現在verはわからない)

その他めも
その他めも
  1. 相対パスで保存
    • ArcMapで[ファイル] メニューをクリックし、[ドキュメント プロパティ] をクリック
    • [プロパティ] ダイアログ ボックスの [データ ソース オプション] をクリック
    • [相対パス名で保存] のオプションをクリックし、[OK] をクリックし、その設定を適用。
    • 新規マップは相対パスで保存にチェックを入れておく。

  2. スナップ環境の設定
    • エディタツールバー→エディターメニューのスナッピング
    • 入力・編集するフィーチャーのスナップする部分を選択(ここでは頂点)
    • 複数レイヤにまたがるときは上のレイヤへのスナップが優先される
    • メモ:スケッチ中にキーボードのTを押すとスナップエリアが表示される

  3. ディゾルブ(隣り合っている同じ凡例を1つにまとめる)
    • ArcToolBox→データ管理ツール→ジェネラライズ→ディゾルブ
    • 入力フィーチャ(Export_area)を選択
    • ディゾルブフィールド(ここではlegend_b)を選択→OK
    • Export_area_Dissolveができるが色が抜けるので、テーブルオブコンテンツでExport_area_Dissolveを右クリックしてプロパティー
    • シンボルタブを開いて
      • カテゴリー→スタイルのシンボルに一致
      • フィールド→legend_b
      • 値の追加→全ての値
      • インポート(Export_area)
      で、色が復活。
    • レイヤで保存をする